package com.yc.cloud.admin.vo;

import com.yc.cloud.entity.UmsMenu;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.time.LocalDateTime;
import java.util.List;

/**
 * 当前登录用户信息视图对象
 *
 * @author kinggu
 * @since 2025-10-31
 */
@Data
@ApiModel(value = "UmsAdminInfoVo", description = "当前登录用户信息视图对象")
public class UmsAdminInfoVo {

    @ApiModelProperty(value = "用户ID")
    private Long id;

    @ApiModelProperty(value = "用户名")
    private String username;

    @ApiModelProperty(value = "用户头像文件ID")
    private String icon;

    @ApiModelProperty(value = "用户头像URL")
    private String iconUrl;

    @ApiModelProperty(value = "邮箱")
    private String email;

    @ApiModelProperty(value = "手机号")
    private String mobile;

    @ApiModelProperty(value = "昵称/真实姓名")
    private String trueName;

    @ApiModelProperty(value = "备注信息")
    private String note;

    @ApiModelProperty(value = "最后登录时间")
    private LocalDateTime loginTime;

    @ApiModelProperty(value = "帐号启用状态：0->禁用；1->启用")
    private Integer status;

    @ApiModelProperty(value = "创建时间")
    private LocalDateTime createTime;

    @ApiModelProperty(value = "更新时间")
    private LocalDateTime updateTime;

    @ApiModelProperty(value = "用户菜单列表")
    private List<UmsMenu> menus;

    @ApiModelProperty(value = "用户角色列表")
    private List<String> roles;
}

